<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>OpenShoe: gpio.c File Reference</title>

<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css" />

<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>

</head>
<body>
<div id="top"><!-- do not remove this div! -->


<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  
  
  <td style="padding-left: 0.5em;">
   <div id="projectname">OpenShoe
   &#160;<span id="projectnumber">0.1</span>
   </div>
   
  </td>
  
  
  
 </tr>
 </tbody>
</table>
</div>

<!-- Generated by Doxygen 1.7.5.1 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>Globals</span></a></li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#define-members">Defines</a>  </div>
  <div class="headertitle">
<div class="title">gpio.c File Reference</div>  </div>
</div>
<div class="contents">

<p>GPIO software driver interface for AVR UC3.  
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &quot;<a class="el" href="gpio_8h_source.html">gpio.h</a>&quot;</code><br/>
</div><table class="memberdecls">
<tr><td colspan="2"><h2><a name="define-members"></a>
Defines</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#a1037b18e2d226fe7d327d4a6f17a21c1">GPIO</a>&#160;&#160;&#160;AVR32_GPIO</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">GPIO module instance.  <a href="#a1037b18e2d226fe7d327d4a6f17a21c1"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="func-members"></a>
Functions</h2></td></tr>
<tr><td colspan="2"><div class="groupHeader">Peripheral Bus Interface</div></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#af8e9d12ce235497e93a945d244ffcb1d">gpio_enable_module</a> (const <a class="el" href="structgpio__map__t.html">gpio_map_t</a> gpiomap, uint32_t size)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Enables specific module modes for a set of pins.  <a href="#af8e9d12ce235497e93a945d244ffcb1d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#af9f1a0613d0095efbcd451aea19aad61">gpio_enable_module_pin</a> (uint32_t pin, uint32_t function)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Enables a specific module mode for a pin.  <a href="#af9f1a0613d0095efbcd451aea19aad61"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#aac347caefb997c7286ece5afea7635e6">gpio_enable_gpio</a> (const <a class="el" href="structgpio__map__t.html">gpio_map_t</a> gpiomap, uint32_t size)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Enables the GPIO mode of a set of pins.  <a href="#aac347caefb997c7286ece5afea7635e6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#a53c0551dec2802423245c507cdc93859">gpio_enable_gpio_pin</a> (uint32_t pin)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Enables the GPIO mode of a pin.  <a href="#a53c0551dec2802423245c507cdc93859"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#ac7473fbcb50b12ed1f89e4af0053d9e3">gpio_enable_pin_pull_up</a> (uint32_t pin)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Enables the pull-up resistor of a pin.  <a href="#ac7473fbcb50b12ed1f89e4af0053d9e3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#a207ba37b5edca047bf822eb0d36bf5d1">gpio_disable_pin_pull_up</a> (uint32_t pin)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Disables the pull-up resistor of a pin.  <a href="#a207ba37b5edca047bf822eb0d36bf5d1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#aa1efc8ea580cc2ac1dd4f2b7694753a1">gpio_configure_pin</a> (uint32_t pin, uint32_t flags)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Configuration functionality on a pin.  <a href="#aa1efc8ea580cc2ac1dd4f2b7694753a1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#ad3316eb0275031a1bdb5cb984be8f447">gpio_configure_group</a> (uint32_t port, uint32_t mask, uint32_t flags)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Configuration functionality on a port.  <a href="#ad3316eb0275031a1bdb5cb984be8f447"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#a595b3cc6efd0f39a7daf8adffdf8d722">gpio_get_pin_value</a> (uint32_t pin)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the value of a pin.  <a href="#a595b3cc6efd0f39a7daf8adffdf8d722"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#ade998bc37c9a25de09e924d819196ba1">gpio_get_gpio_pin_output_value</a> (uint32_t pin)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the output value set for a GPIO pin.  <a href="#ade998bc37c9a25de09e924d819196ba1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#a1c5870c1d41fc5452633f5d2dba400a8">gpio_get_gpio_open_drain_pin_output_value</a> (uint32_t pin)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the output value set for a GPIO pin using open drain.  <a href="#a1c5870c1d41fc5452633f5d2dba400a8"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#a4d51cd706a0f51f82298d2e532267ef5">gpio_set_gpio_pin</a> (uint32_t pin)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Drives a GPIO pin to 1.  <a href="#a4d51cd706a0f51f82298d2e532267ef5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#a56f766236871cf0dbe917d9ead9b5fca">gpio_set_pin_high</a> (uint32_t pin)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Drives a GPIO pin to 1.  <a href="#a56f766236871cf0dbe917d9ead9b5fca"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#a80f54b96c3056680069c59114c13c11c">gpio_set_group_high</a> (uint32_t port, uint32_t mask)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Drives a GPIO port to 1.  <a href="#a80f54b96c3056680069c59114c13c11c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#ac691d66dd34e00bc7e990458fbd63cd8">gpio_set_pin_low</a> (uint32_t pin)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Drives a GPIO pin to 0.  <a href="#ac691d66dd34e00bc7e990458fbd63cd8"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#a556450a9b5877a6c3c02b9dac60595f9">gpio_clr_gpio_pin</a> (uint32_t pin)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Drives a GPIO pin to 0.  <a href="#a556450a9b5877a6c3c02b9dac60595f9"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#a88a6f215862430f83fac55a7f2843df6">gpio_set_group_low</a> (uint32_t port, uint32_t mask)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Drives a GPIO port to 0.  <a href="#a88a6f215862430f83fac55a7f2843df6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#a559c1966b17539fb6f2e6f88ceb52d0f">gpio_tgl_gpio_pin</a> (uint32_t pin)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Toggles a GPIO pin.  <a href="#a559c1966b17539fb6f2e6f88ceb52d0f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#a821248aa6811112db9bf1ce9a67861bb">gpio_toggle_pin</a> (uint32_t pin)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Toggles a GPIO pin.  <a href="#a821248aa6811112db9bf1ce9a67861bb"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#a592c014bb5a6f725d69d52ced0a2dd50">gpio_toggle_group</a> (uint32_t port, uint32_t mask)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Toggles a GPIO group.  <a href="#a592c014bb5a6f725d69d52ced0a2dd50"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#aefb66382a63eb80fe2dbbba81941ea27">gpio_set_gpio_open_drain_pin</a> (uint32_t pin)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Drives a GPIO pin to 1 using open drain.  <a href="#aefb66382a63eb80fe2dbbba81941ea27"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#aa3ab2e7879fc80a4ac6a82de162a5b54">gpio_clr_gpio_open_drain_pin</a> (uint32_t pin)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Drives a GPIO pin to 0 using open drain.  <a href="#aa3ab2e7879fc80a4ac6a82de162a5b54"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#ae84d0b7369c3a00074129a0669eaa8c0">gpio_tgl_gpio_open_drain_pin</a> (uint32_t pin)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Toggles a GPIO pin using open drain.  <a href="#ae84d0b7369c3a00074129a0669eaa8c0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#aaff54a64c4d4be449dacdf7489843d86">gpio_enable_pin_glitch_filter</a> (uint32_t pin)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Enables the glitch filter of a pin.  <a href="#aaff54a64c4d4be449dacdf7489843d86"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#a52838ded649c70319ba0ead507ebc1b0">gpio_disable_pin_glitch_filter</a> (uint32_t pin)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Disables the glitch filter of a pin.  <a href="#a52838ded649c70319ba0ead507ebc1b0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#a55a728589909501835f05b2ca33d43c8">gpio_enable_pin_interrupt</a> (uint32_t pin, uint32_t mode)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Enables the interrupt of a pin with the specified settings.  <a href="#a55a728589909501835f05b2ca33d43c8"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#aba8e79a902d865538dcd88d5d3f9c964">gpio_disable_pin_interrupt</a> (uint32_t pin)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Disables the interrupt of a pin.  <a href="#aba8e79a902d865538dcd88d5d3f9c964"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#a45b567e9f64c3917c1584adb6f634d0a">gpio_get_pin_interrupt_flag</a> (uint32_t pin)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the interrupt flag of a pin.  <a href="#a45b567e9f64c3917c1584adb6f634d0a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#aff3dba73ea60af0aea6149bba1414aff">gpio_clear_pin_interrupt_flag</a> (uint32_t pin)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Clears the interrupt flag of a pin.  <a href="#aff3dba73ea60af0aea6149bba1414aff"></a><br/></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>GPIO software driver interface for AVR UC3. </p>
<ul>
<li>Compiler: GCC and IAR for AVR</li>
<li>Supported devices: All AVR UC3 devices with a GPIO module can be used.</li>
<li>AppNote:</li>
</ul>
<dl class="author"><dt><b>Author:</b></dt><dd>Atmel Corporation: <a href="http://www.atmel.com">http://www.atmel.com</a> <br/>
 Support and FAQ: <a href="http://support.atmel.no/">http://support.atmel.no/</a> </dd></dl>
</div><hr/><h2>Define Documentation</h2>
<a class="anchor" id="a1037b18e2d226fe7d327d4a6f17a21c1"></a><!-- doxytag: member="gpio.c::GPIO" ref="a1037b18e2d226fe7d327d4a6f17a21c1" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GPIO&#160;&#160;&#160;AVR32_GPIO</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>GPIO module instance. </p>

</div>
</div>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="aff3dba73ea60af0aea6149bba1414aff"></a><!-- doxytag: member="gpio.c::gpio_clear_pin_interrupt_flag" ref="aff3dba73ea60af0aea6149bba1414aff" args="(uint32_t pin)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gpio_clear_pin_interrupt_flag </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>pin</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Clears the interrupt flag of a pin. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">pin</td><td>The pin number. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="aa3ab2e7879fc80a4ac6a82de162a5b54"></a><!-- doxytag: member="gpio.c::gpio_clr_gpio_open_drain_pin" ref="aa3ab2e7879fc80a4ac6a82de162a5b54" args="(uint32_t pin)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gpio_clr_gpio_open_drain_pin </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>pin</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Drives a GPIO pin to 0 using open drain. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">pin</td><td>The pin number. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a556450a9b5877a6c3c02b9dac60595f9"></a><!-- doxytag: member="gpio.c::gpio_clr_gpio_pin" ref="a556450a9b5877a6c3c02b9dac60595f9" args="(uint32_t pin)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gpio_clr_gpio_pin </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>pin</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Drives a GPIO pin to 0. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">pin</td><td>The pin number. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ad3316eb0275031a1bdb5cb984be8f447"></a><!-- doxytag: member="gpio.c::gpio_configure_group" ref="ad3316eb0275031a1bdb5cb984be8f447" args="(uint32_t port, uint32_t mask, uint32_t flags)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gpio_configure_group </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>port</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>mask</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>flags</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Configuration functionality on a port. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">port</td><td>The port number. </td></tr>
    <tr><td class="paramname">mask</td><td>The mask. </td></tr>
    <tr><td class="paramname">flags</td><td>The configuration. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="aa1efc8ea580cc2ac1dd4f2b7694753a1"></a><!-- doxytag: member="gpio.c::gpio_configure_pin" ref="aa1efc8ea580cc2ac1dd4f2b7694753a1" args="(uint32_t pin, uint32_t flags)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gpio_configure_pin </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>pin</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>flags</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Configuration functionality on a pin. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">pin</td><td>The pin number. </td></tr>
    <tr><td class="paramname">flags</td><td>The configuration. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a52838ded649c70319ba0ead507ebc1b0"></a><!-- doxytag: member="gpio.c::gpio_disable_pin_glitch_filter" ref="a52838ded649c70319ba0ead507ebc1b0" args="(uint32_t pin)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gpio_disable_pin_glitch_filter </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>pin</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Disables the glitch filter of a pin. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">pin</td><td>The pin number. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="aba8e79a902d865538dcd88d5d3f9c964"></a><!-- doxytag: member="gpio.c::gpio_disable_pin_interrupt" ref="aba8e79a902d865538dcd88d5d3f9c964" args="(uint32_t pin)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gpio_disable_pin_interrupt </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>pin</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Disables the interrupt of a pin. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">pin</td><td>The pin number. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a207ba37b5edca047bf822eb0d36bf5d1"></a><!-- doxytag: member="gpio.c::gpio_disable_pin_pull_up" ref="a207ba37b5edca047bf822eb0d36bf5d1" args="(uint32_t pin)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gpio_disable_pin_pull_up </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>pin</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Disables the pull-up resistor of a pin. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">pin</td><td>The pin number. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="aac347caefb997c7286ece5afea7635e6"></a><!-- doxytag: member="gpio.c::gpio_enable_gpio" ref="aac347caefb997c7286ece5afea7635e6" args="(const gpio_map_t gpiomap, uint32_t size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gpio_enable_gpio </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structgpio__map__t.html">gpio_map_t</a>&#160;</td>
          <td class="paramname"><em>gpiomap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Enables the GPIO mode of a set of pins. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">gpiomap</td><td>The pin map. </td></tr>
    <tr><td class="paramname">size</td><td>The number of pins in <em>gpiomap</em>. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a53c0551dec2802423245c507cdc93859"></a><!-- doxytag: member="gpio.c::gpio_enable_gpio_pin" ref="a53c0551dec2802423245c507cdc93859" args="(uint32_t pin)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gpio_enable_gpio_pin </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>pin</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Enables the GPIO mode of a pin. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">pin</td><td>The pin number.<br/>
 Refer to the product header file `uc3x.h' (where x is the part number; e.g. x = a0512) for pin definitions. E.g., to enable the GPIO mode of PX21, AVR32_PIN_PX21 can be used. Module pins such as AVR32_PWM_3_PIN for PWM channel 3 can also be used to release module pins for GPIO. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="af8e9d12ce235497e93a945d244ffcb1d"></a><!-- doxytag: member="gpio.c::gpio_enable_module" ref="af8e9d12ce235497e93a945d244ffcb1d" args="(const gpio_map_t gpiomap, uint32_t size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int gpio_enable_module </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structgpio__map__t.html">gpio_map_t</a>&#160;</td>
          <td class="paramname"><em>gpiomap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Enables specific module modes for a set of pins. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">gpiomap</td><td>The pin map. </td></tr>
    <tr><td class="paramname">size</td><td>The number of pins in <em>gpiomap</em>.</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd><a class="el" href="gpio_8h.html#a27f04dbcec307382213c2179b50890c2">GPIO_SUCCESS</a> or <a class="el" href="gpio_8h.html#a13cb25f6da54f68dccb38c06eb872b3e">GPIO_INVALID_ARGUMENT</a>. </dd></dl>

</div>
</div>
<a class="anchor" id="af9f1a0613d0095efbcd451aea19aad61"></a><!-- doxytag: member="gpio.c::gpio_enable_module_pin" ref="af9f1a0613d0095efbcd451aea19aad61" args="(uint32_t pin, uint32_t function)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int gpio_enable_module_pin </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>pin</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>function</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Enables a specific module mode for a pin. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">pin</td><td>The pin number.<br/>
 Refer to the product header file `uc3x.h' (where x is the part number; e.g. x = a0512) for module pins. E.g., to enable a PWM channel output, the pin number can be AVR32_PWM_3_PIN for PWM channel 3. </td></tr>
    <tr><td class="paramname">function</td><td>The pin function.<br/>
 Refer to the product header file `uc3x.h' (where x is the part number; e.g. x = a0512) for module pin functions. E.g., to enable a PWM channel output, the pin function can be AVR32_PWM_3_FUNCTION for PWM channel 3.</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd><a class="el" href="gpio_8h.html#a27f04dbcec307382213c2179b50890c2">GPIO_SUCCESS</a> or <a class="el" href="gpio_8h.html#a13cb25f6da54f68dccb38c06eb872b3e">GPIO_INVALID_ARGUMENT</a>. </dd></dl>

</div>
</div>
<a class="anchor" id="aaff54a64c4d4be449dacdf7489843d86"></a><!-- doxytag: member="gpio.c::gpio_enable_pin_glitch_filter" ref="aaff54a64c4d4be449dacdf7489843d86" args="(uint32_t pin)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gpio_enable_pin_glitch_filter </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>pin</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Enables the glitch filter of a pin. </p>
<p>When the glitch filter is enabled, a glitch with duration of less than 1 clock cycle is automatically rejected, while a pulse with duration of 2 clock cycles or more is accepted. For pulse durations between 1 clock cycle and 2 clock cycles, the pulse may or may not be taken into account, depending on the precise timing of its occurrence. Thus for a pulse to be guaranteed visible it must exceed 2 clock cycles, whereas for a glitch to be reliably filtered out, its duration must not exceed 1 clock cycle. The filter introduces 2 clock cycles latency.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">pin</td><td>The pin number. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a55a728589909501835f05b2ca33d43c8"></a><!-- doxytag: member="gpio.c::gpio_enable_pin_interrupt" ref="a55a728589909501835f05b2ca33d43c8" args="(uint32_t pin, uint32_t mode)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int gpio_enable_pin_interrupt </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>pin</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>mode</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Enables the interrupt of a pin with the specified settings. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">pin</td><td>The pin number. </td></tr>
    <tr><td class="paramname">mode</td><td>The trigger mode (<a class="el" href="gpio_8h.html#a37dccdf4c8d04cae2be9a8ac321cad84">GPIO_PIN_CHANGE</a>, <a class="el" href="gpio_8h.html#ab7f1524655feb8ef492ffa61e8325ead">GPIO_RISING_EDGE</a> or <a class="el" href="gpio_8h.html#ae3f7c69a67f3780f8c6361df8418a36b">GPIO_FALLING_EDGE</a>).</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd><a class="el" href="gpio_8h.html#a27f04dbcec307382213c2179b50890c2">GPIO_SUCCESS</a> or <a class="el" href="gpio_8h.html#a13cb25f6da54f68dccb38c06eb872b3e">GPIO_INVALID_ARGUMENT</a>. </dd></dl>

</div>
</div>
<a class="anchor" id="ac7473fbcb50b12ed1f89e4af0053d9e3"></a><!-- doxytag: member="gpio.c::gpio_enable_pin_pull_up" ref="ac7473fbcb50b12ed1f89e4af0053d9e3" args="(uint32_t pin)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gpio_enable_pin_pull_up </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>pin</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Enables the pull-up resistor of a pin. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">pin</td><td>The pin number. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a1c5870c1d41fc5452633f5d2dba400a8"></a><!-- doxytag: member="gpio.c::gpio_get_gpio_open_drain_pin_output_value" ref="a1c5870c1d41fc5452633f5d2dba400a8" args="(uint32_t pin)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int gpio_get_gpio_open_drain_pin_output_value </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>pin</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the output value set for a GPIO pin using open drain. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">pin</td><td>The pin number.</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The pin output value.</dd></dl>
<dl class="note"><dt><b>Note:</b></dt><dd>This function must be used in conjunction with <a class="el" href="gpio_8h.html#aefb66382a63eb80fe2dbbba81941ea27">gpio_set_gpio_open_drain_pin</a>, <a class="el" href="gpio_8h.html#aa3ab2e7879fc80a4ac6a82de162a5b54">gpio_clr_gpio_open_drain_pin</a> and <a class="el" href="gpio_8h.html#ae84d0b7369c3a00074129a0669eaa8c0">gpio_tgl_gpio_open_drain_pin</a>. </dd></dl>

</div>
</div>
<a class="anchor" id="ade998bc37c9a25de09e924d819196ba1"></a><!-- doxytag: member="gpio.c::gpio_get_gpio_pin_output_value" ref="ade998bc37c9a25de09e924d819196ba1" args="(uint32_t pin)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int gpio_get_gpio_pin_output_value </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>pin</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the output value set for a GPIO pin. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">pin</td><td>The pin number.</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The pin output value.</dd></dl>
<dl class="note"><dt><b>Note:</b></dt><dd>This function must be used in conjunction with <a class="el" href="gpio_8h.html#a4d51cd706a0f51f82298d2e532267ef5">gpio_set_gpio_pin</a>, <a class="el" href="gpio_8h.html#a556450a9b5877a6c3c02b9dac60595f9">gpio_clr_gpio_pin</a> and <a class="el" href="gpio_8h.html#a559c1966b17539fb6f2e6f88ceb52d0f">gpio_tgl_gpio_pin</a>. </dd></dl>

</div>
</div>
<a class="anchor" id="a45b567e9f64c3917c1584adb6f634d0a"></a><!-- doxytag: member="gpio.c::gpio_get_pin_interrupt_flag" ref="a45b567e9f64c3917c1584adb6f634d0a" args="(uint32_t pin)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int gpio_get_pin_interrupt_flag </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>pin</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Gets the interrupt flag of a pin. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">pin</td><td>The pin number.</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The pin interrupt flag. </dd></dl>

</div>
</div>
<a class="anchor" id="a595b3cc6efd0f39a7daf8adffdf8d722"></a><!-- doxytag: member="gpio.c::gpio_get_pin_value" ref="a595b3cc6efd0f39a7daf8adffdf8d722" args="(uint32_t pin)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int gpio_get_pin_value </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>pin</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the value of a pin. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">pin</td><td>The pin number.</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The pin value. </dd></dl>

</div>
</div>
<a class="anchor" id="aefb66382a63eb80fe2dbbba81941ea27"></a><!-- doxytag: member="gpio.c::gpio_set_gpio_open_drain_pin" ref="aefb66382a63eb80fe2dbbba81941ea27" args="(uint32_t pin)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gpio_set_gpio_open_drain_pin </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>pin</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Drives a GPIO pin to 1 using open drain. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">pin</td><td>The pin number. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a4d51cd706a0f51f82298d2e532267ef5"></a><!-- doxytag: member="gpio.c::gpio_set_gpio_pin" ref="a4d51cd706a0f51f82298d2e532267ef5" args="(uint32_t pin)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gpio_set_gpio_pin </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>pin</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Drives a GPIO pin to 1. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">pin</td><td>The pin number. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a80f54b96c3056680069c59114c13c11c"></a><!-- doxytag: member="gpio.c::gpio_set_group_high" ref="a80f54b96c3056680069c59114c13c11c" args="(uint32_t port, uint32_t mask)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gpio_set_group_high </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>port</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>mask</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Drives a GPIO port to 1. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">port</td><td>The port number. </td></tr>
    <tr><td class="paramname">mask</td><td>The mask. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a88a6f215862430f83fac55a7f2843df6"></a><!-- doxytag: member="gpio.c::gpio_set_group_low" ref="a88a6f215862430f83fac55a7f2843df6" args="(uint32_t port, uint32_t mask)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gpio_set_group_low </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>port</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>mask</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Drives a GPIO port to 0. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">port</td><td>The port number. </td></tr>
    <tr><td class="paramname">mask</td><td>The mask. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a56f766236871cf0dbe917d9ead9b5fca"></a><!-- doxytag: member="gpio.c::gpio_set_pin_high" ref="a56f766236871cf0dbe917d9ead9b5fca" args="(uint32_t pin)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gpio_set_pin_high </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>pin</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Drives a GPIO pin to 1. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">pin</td><td>The pin number.</td></tr>
  </table>
  </dd>
</dl>
<dl class="note"><dt><b>Note:</b></dt><dd>The function <a class="el" href="gpio_8h.html#aa1efc8ea580cc2ac1dd4f2b7694753a1">gpio_configure_pin</a> must be called before. </dd></dl>

</div>
</div>
<a class="anchor" id="ac691d66dd34e00bc7e990458fbd63cd8"></a><!-- doxytag: member="gpio.c::gpio_set_pin_low" ref="ac691d66dd34e00bc7e990458fbd63cd8" args="(uint32_t pin)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gpio_set_pin_low </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>pin</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Drives a GPIO pin to 0. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">pin</td><td>The pin number.</td></tr>
  </table>
  </dd>
</dl>
<dl class="note"><dt><b>Note:</b></dt><dd>The function <a class="el" href="gpio_8h.html#aa1efc8ea580cc2ac1dd4f2b7694753a1">gpio_configure_pin</a> must be called before. </dd></dl>

</div>
</div>
<a class="anchor" id="ae84d0b7369c3a00074129a0669eaa8c0"></a><!-- doxytag: member="gpio.c::gpio_tgl_gpio_open_drain_pin" ref="ae84d0b7369c3a00074129a0669eaa8c0" args="(uint32_t pin)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gpio_tgl_gpio_open_drain_pin </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>pin</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Toggles a GPIO pin using open drain. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">pin</td><td>The pin number. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a559c1966b17539fb6f2e6f88ceb52d0f"></a><!-- doxytag: member="gpio.c::gpio_tgl_gpio_pin" ref="a559c1966b17539fb6f2e6f88ceb52d0f" args="(uint32_t pin)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gpio_tgl_gpio_pin </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>pin</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Toggles a GPIO pin. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">pin</td><td>The pin number. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a592c014bb5a6f725d69d52ced0a2dd50"></a><!-- doxytag: member="gpio.c::gpio_toggle_group" ref="a592c014bb5a6f725d69d52ced0a2dd50" args="(uint32_t port, uint32_t mask)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gpio_toggle_group </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>port</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>mask</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Toggles a GPIO group. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">port</td><td>The port number. </td></tr>
    <tr><td class="paramname">mask</td><td>The mask. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a821248aa6811112db9bf1ce9a67861bb"></a><!-- doxytag: member="gpio.c::gpio_toggle_pin" ref="a821248aa6811112db9bf1ce9a67861bb" args="(uint32_t pin)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gpio_toggle_pin </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>pin</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Toggles a GPIO pin. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">pin</td><td>The pin number.</td></tr>
  </table>
  </dd>
</dl>
<dl class="note"><dt><b>Note:</b></dt><dd>The function <a class="el" href="gpio_8h.html#aa1efc8ea580cc2ac1dd4f2b7694753a1">gpio_configure_pin</a> must be called before. </dd></dl>

</div>
</div>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Defines</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>



<hr class="footer"/><address class="footer"><small>
Generated on Mon Dec 19 2011 21:04:52 for OpenShoe by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.7.5.1
</small></address>

</body>
</html>
